package com.itheima.lambda;

public class Test2 {

    public static void main(String[] args) {
    //lambda实现：lambda关注的点只有怎么做，关注的其实就是要怎么重写接口的抽象方法
        useShowHandler(new ShowHandler() {
            @Override
            public void show() {
                System.out.println("我是匿名内部类中的show方法");
            }
        });

        /*
        lambda书写格式要求：
            ()：写要重写的方法的形参列表，和接口的抽象方法的形参列表严格保持一致
            -> ：lambda的
         */
        //lambda实现
        useShowHandler(()->{
            System.out.println("1.我是lambda中的show方法");
        });



        ShowHandler showHandler=()->{
            System.out.println("2.我是lambda中的show方法");
        };
        showHandler.show();


    }

    public static void useShowHandler(ShowHandler showHandler) {
      showHandler.show();
    }

}


//函数式接口
@FunctionalInterface
interface ShowHandler {
    void show();
}